[INFO] cloning repository https://github.com/reversed-R/hindley-milner-type-inference
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/reversed-R/hindley-milner-type-inference" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Freversed-R%2Fhindley-milner-type-inference", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Freversed-R%2Fhindley-milner-type-inference'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 7e92daa59ef3c4e6613cbed9fd2ce7d95d683433
[INFO] testing reversed-R/hindley-milner-type-inference against master#1f7f8ea0721a3b1eb73e6c6d25cccb371434b320 for pr-154065-1
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Freversed-R%2Fhindley-milner-type-inference" "/workspace/builds/worker-2-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-2-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/reversed-R/hindley-milner-type-inference
[INFO] finished tweaking git repo https://github.com/reversed-R/hindley-milner-type-inference
[INFO] tweaked toml for git repo https://github.com/reversed-R/hindley-milner-type-inference written to /workspace/builds/worker-2-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/reversed-R/hindley-milner-type-inference on toolchain 1f7f8ea0721a3b1eb73e6c6d25cccb371434b320
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1f7f8ea0721a3b1eb73e6c6d25cccb371434b320" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/reversed-R/hindley-milner-type-inference already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1f7f8ea0721a3b1eb73e6c6d25cccb371434b320" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1f7f8ea0721a3b1eb73e6c6d25cccb371434b320" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 01f6dd545c865fbad3d4b7cb85d9b2931ef08f23436315d853941d0783587c36
[INFO] running `Command { std: "docker" "start" "-a" "01f6dd545c865fbad3d4b7cb85d9b2931ef08f23436315d853941d0783587c36", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "01f6dd545c865fbad3d4b7cb85d9b2931ef08f23436315d853941d0783587c36", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "01f6dd545c865fbad3d4b7cb85d9b2931ef08f23436315d853941d0783587c36", kill_on_drop: false }`
[INFO] [stdout] 01f6dd545c865fbad3d4b7cb85d9b2931ef08f23436315d853941d0783587c36
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1f7f8ea0721a3b1eb73e6c6d25cccb371434b320" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] f13748707619bf0d341971caa2b4b41a80cd215255ec0eeb9c21e67451032f42
[INFO] running `Command { std: "docker" "start" "-a" "f13748707619bf0d341971caa2b4b41a80cd215255ec0eeb9c21e67451032f42", kill_on_drop: false }`
[INFO] [stderr]    Compiling aho-corasick v1.1.4
[INFO] [stderr]    Compiling regex-syntax v0.8.8
[INFO] [stderr]    Compiling jiff v0.2.18
[INFO] [stderr]    Compiling anstream v0.6.21
[INFO] [stderr]    Compiling regex-automata v0.4.13
[INFO] [stderr]    Compiling regex v1.12.2
[INFO] [stderr]    Compiling env_filter v0.1.4
[INFO] [stderr]    Compiling env_logger v0.11.8
[INFO] [stderr]    Compiling hindley-milner-type-inference v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `log::info`
[INFO] [stdout]  --> src/ast.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use log::info;
[INFO] [stdout]   |     ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Ast` is never constructed
[INFO] [stdout]  --> src/ast.rs:5:19
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub(crate) struct Ast {
[INFO] [stdout]   |                   ^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Stmt` is never used
[INFO] [stdout]  --> src/ast.rs:9:17
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub(crate) enum Stmt {
[INFO] [stdout]   |                 ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `VarDecl` is never constructed
[INFO] [stdout]   --> src/ast.rs:13:19
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub(crate) struct VarDecl {
[INFO] [stdout]    |                   ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Expr` is never used
[INFO] [stdout]   --> src/ast.rs:18:17
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub(crate) enum Expr {
[INFO] [stdout]    |                 ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Literal` is never used
[INFO] [stdout]   --> src/ast.rs:25:17
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub(crate) enum Literal {
[INFO] [stdout]    |                 ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `VarName` is never constructed
[INFO] [stdout]   --> src/ast.rs:32:19
[INFO] [stdout]    |
[INFO] [stdout] 32 | pub(crate) struct VarName(pub(crate) String);
[INFO] [stdout]    |                   ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `LambdaExpr` is never constructed
[INFO] [stdout]   --> src/ast.rs:34:19
[INFO] [stdout]    |
[INFO] [stdout] 34 | pub(crate) struct LambdaExpr {
[INFO] [stdout]    |                   ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `CallExpr` is never constructed
[INFO] [stdout]   --> src/ast.rs:39:19
[INFO] [stdout]    |
[INFO] [stdout] 39 | pub(crate) struct CallExpr {
[INFO] [stdout]    |                   ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TyVar` is never constructed
[INFO] [stdout]  --> src/infer.rs:9:12
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub struct TyVar(pub usize);
[INFO] [stdout]   |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Ty` is never used
[INFO] [stdout]   --> src/infer.rs:12:10
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub enum Ty {
[INFO] [stdout]    |          ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `FnTy` is never constructed
[INFO] [stdout]   --> src/infer.rs:21:12
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub struct FnTy {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Scheme` is never constructed
[INFO] [stdout]   --> src/infer.rs:29:12
[INFO] [stdout]    |
[INFO] [stdout] 29 | pub struct Scheme {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TyEnv` is never constructed
[INFO] [stdout]   --> src/infer.rs:35:12
[INFO] [stdout]    |
[INFO] [stdout] 35 | pub struct TyEnv {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Infer` is never constructed
[INFO] [stdout]   --> src/infer.rs:40:12
[INFO] [stdout]    |
[INFO] [stdout] 40 | pub struct Infer {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `TyError` is never used
[INFO] [stdout]   --> src/infer.rs:46:10
[INFO] [stdout]    |
[INFO] [stdout] 46 | pub enum TyError {
[INFO] [stdout]    |          ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `TyResult` is never used
[INFO] [stdout]   --> src/infer.rs:56:6
[INFO] [stdout]    |
[INFO] [stdout] 56 | type TyResult<T> = Result<T, TyError>;
[INFO] [stdout]    |      ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/infer.rs:59:12
[INFO] [stdout]     |
[INFO] [stdout]  58 | impl Infer {
[INFO] [stdout]     | ---------- associated items in this implementation
[INFO] [stdout]  59 |     pub fn new() -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout]  66 |     fn fresh(&mut self) -> Ty {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  72 |     fn apply(&self, t: Ty) -> Ty {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  89 |     fn unify(&mut self, t1: Ty, t2: Ty) -> TyResult<()> {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 126 |     fn ftv(t: &Ty) -> HashSet<TyVar> {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 141 |     fn ftv_scheme(s: &Scheme) -> HashSet<TyVar> {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 149 |     fn ftv_env(env: &TyEnv) -> HashSet<TyVar> {
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 153 |     fn instantiate(&mut self, s: &Scheme) -> Ty {
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 174 |     fn infer_expr(&mut self, env: &mut TyEnv, expr: &Expr) -> TyResult<Ty> {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `occurs` is never used
[INFO] [stdout]    --> src/infer.rs:235:4
[INFO] [stdout]     |
[INFO] [stdout] 235 | fn occurs(v: &TyVar, t: &Ty) -> bool {
[INFO] [stdout]     |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `InferedTys` is never constructed
[INFO] [stdout]    --> src/infer.rs:244:12
[INFO] [stdout]     |
[INFO] [stdout] 244 | pub struct InferedTys {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `infer_ast` is never used
[INFO] [stdout]    --> src/infer.rs:249:8
[INFO] [stdout]     |
[INFO] [stdout] 249 | pub fn infer_ast(ast: &Ast) -> TyResult<InferedTys> {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `can_apply` is never used
[INFO] [stdout]    --> src/infer.rs:279:12
[INFO] [stdout]     |
[INFO] [stdout] 277 | impl InferedTys {
[INFO] [stdout]     | --------------- method in this implementation
[INFO] [stdout] 278 |     // for test
[INFO] [stdout] 279 |     pub fn can_apply(&self, var: &VarName, f: FnTy) -> TyResult<()> {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 5.04s
[INFO] running `Command { std: "docker" "inspect" "f13748707619bf0d341971caa2b4b41a80cd215255ec0eeb9c21e67451032f42", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "f13748707619bf0d341971caa2b4b41a80cd215255ec0eeb9c21e67451032f42", kill_on_drop: false }`
[INFO] [stdout] f13748707619bf0d341971caa2b4b41a80cd215255ec0eeb9c21e67451032f42
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1f7f8ea0721a3b1eb73e6c6d25cccb371434b320" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 1fd7f623576356de8ac8c64a86c7e5969f489f6a00d33861cbd4d414d26896dc
[INFO] running `Command { std: "docker" "start" "-a" "1fd7f623576356de8ac8c64a86c7e5969f489f6a00d33861cbd4d414d26896dc", kill_on_drop: false }`
[INFO] [stdout] warning: unused import: `log::info`
[INFO] [stdout]  --> src/ast.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use log::info;
[INFO] [stdout]   |     ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Ast` is never constructed
[INFO] [stdout]  --> src/ast.rs:5:19
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub(crate) struct Ast {
[INFO] [stdout]   |                   ^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Stmt` is never used
[INFO] [stdout]  --> src/ast.rs:9:17
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub(crate) enum Stmt {
[INFO] [stdout]   |                 ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `VarDecl` is never constructed
[INFO] [stdout]   --> src/ast.rs:13:19
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub(crate) struct VarDecl {
[INFO] [stdout]    |                   ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Expr` is never used
[INFO] [stdout]   --> src/ast.rs:18:17
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub(crate) enum Expr {
[INFO] [stdout]    |                 ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Literal` is never used
[INFO] [stdout]   --> src/ast.rs:25:17
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub(crate) enum Literal {
[INFO] [stdout]    |                 ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `VarName` is never constructed
[INFO] [stdout]   --> src/ast.rs:32:19
[INFO] [stdout]    |
[INFO] [stdout] 32 | pub(crate) struct VarName(pub(crate) String);
[INFO] [stdout]    |                   ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `LambdaExpr` is never constructed
[INFO] [stdout]   --> src/ast.rs:34:19
[INFO] [stdout]    |
[INFO] [stdout] 34 | pub(crate) struct LambdaExpr {
[INFO] [stdout]    |                   ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `CallExpr` is never constructed
[INFO] [stdout]   --> src/ast.rs:39:19
[INFO] [stdout]    |
[INFO] [stdout] 39 | pub(crate) struct CallExpr {
[INFO] [stdout]    |                   ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TyVar` is never constructed
[INFO] [stdout]  --> src/infer.rs:9:12
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub struct TyVar(pub usize);
[INFO] [stdout]   |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Ty` is never used
[INFO] [stdout]   --> src/infer.rs:12:10
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub enum Ty {
[INFO] [stdout]    |          ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling hindley-milner-type-inference v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: struct `FnTy` is never constructed
[INFO] [stdout]   --> src/infer.rs:21:12
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub struct FnTy {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Scheme` is never constructed
[INFO] [stdout]   --> src/infer.rs:29:12
[INFO] [stdout]    |
[INFO] [stdout] 29 | pub struct Scheme {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TyEnv` is never constructed
[INFO] [stdout]   --> src/infer.rs:35:12
[INFO] [stdout]    |
[INFO] [stdout] 35 | pub struct TyEnv {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Infer` is never constructed
[INFO] [stdout]   --> src/infer.rs:40:12
[INFO] [stdout]    |
[INFO] [stdout] 40 | pub struct Infer {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `TyError` is never used
[INFO] [stdout]   --> src/infer.rs:46:10
[INFO] [stdout]    |
[INFO] [stdout] 46 | pub enum TyError {
[INFO] [stdout]    |          ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `TyResult` is never used
[INFO] [stdout]   --> src/infer.rs:56:6
[INFO] [stdout]    |
[INFO] [stdout] 56 | type TyResult<T> = Result<T, TyError>;
[INFO] [stdout]    |      ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/infer.rs:59:12
[INFO] [stdout]     |
[INFO] [stdout]  58 | impl Infer {
[INFO] [stdout]     | ---------- associated items in this implementation
[INFO] [stdout]  59 |     pub fn new() -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout]  66 |     fn fresh(&mut self) -> Ty {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  72 |     fn apply(&self, t: Ty) -> Ty {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  89 |     fn unify(&mut self, t1: Ty, t2: Ty) -> TyResult<()> {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 126 |     fn ftv(t: &Ty) -> HashSet<TyVar> {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 141 |     fn ftv_scheme(s: &Scheme) -> HashSet<TyVar> {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 149 |     fn ftv_env(env: &TyEnv) -> HashSet<TyVar> {
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 153 |     fn instantiate(&mut self, s: &Scheme) -> Ty {
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 174 |     fn infer_expr(&mut self, env: &mut TyEnv, expr: &Expr) -> TyResult<Ty> {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `occurs` is never used
[INFO] [stdout]    --> src/infer.rs:235:4
[INFO] [stdout]     |
[INFO] [stdout] 235 | fn occurs(v: &TyVar, t: &Ty) -> bool {
[INFO] [stdout]     |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `InferedTys` is never constructed
[INFO] [stdout]    --> src/infer.rs:244:12
[INFO] [stdout]     |
[INFO] [stdout] 244 | pub struct InferedTys {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `infer_ast` is never used
[INFO] [stdout]    --> src/infer.rs:249:8
[INFO] [stdout]     |
[INFO] [stdout] 249 | pub fn infer_ast(ast: &Ast) -> TyResult<InferedTys> {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `can_apply` is never used
[INFO] [stdout]    --> src/infer.rs:279:12
[INFO] [stdout]     |
[INFO] [stdout] 277 | impl InferedTys {
[INFO] [stdout]     | --------------- method in this implementation
[INFO] [stdout] 278 |     // for test
[INFO] [stdout] 279 |     pub fn can_apply(&self, var: &VarName, f: FnTy) -> TyResult<()> {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `log::info`
[INFO] [stdout]  --> src/ast.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use log::info;
[INFO] [stdout]   |     ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Bool` is never constructed
[INFO] [stdout]   --> src/ast.rs:28:5
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub(crate) enum Literal {
[INFO] [stdout]    |                 ------- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 28 |     Bool(bool),
[INFO] [stdout]    |     ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `VariableConflicted` and `TypeVariableNotCallable` are never constructed
[INFO] [stdout]   --> src/infer.rs:48:5
[INFO] [stdout]    |
[INFO] [stdout] 46 | pub enum TyError {
[INFO] [stdout]    |          ------- variants in this enum
[INFO] [stdout] 47 |     VariableNotFound(VarName),
[INFO] [stdout] 48 |     VariableConflicted(VarName),
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 49 |
[INFO] [stdout] 50 |     TypeVariableNotCallable(TyVar),
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `TyError` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated functions `ftv`, `ftv_scheme`, and `ftv_env` are never used
[INFO] [stdout]    --> src/infer.rs:126:8
[INFO] [stdout]     |
[INFO] [stdout]  58 | impl Infer {
[INFO] [stdout]     | ---------- associated functions in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 126 |     fn ftv(t: &Ty) -> HashSet<TyVar> {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 141 |     fn ftv_scheme(s: &Scheme) -> HashSet<TyVar> {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 149 |     fn ftv_env(env: &TyEnv) -> HashSet<TyVar> {
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.53s
[INFO] running `Command { std: "docker" "inspect" "1fd7f623576356de8ac8c64a86c7e5969f489f6a00d33861cbd4d414d26896dc", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "1fd7f623576356de8ac8c64a86c7e5969f489f6a00d33861cbd4d414d26896dc", kill_on_drop: false }`
[INFO] [stdout] 1fd7f623576356de8ac8c64a86c7e5969f489f6a00d33861cbd4d414d26896dc
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1f7f8ea0721a3b1eb73e6c6d25cccb371434b320" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 4f8df6fd1641702cece8fdfd33f064a69d536770c818303c8930befbbfe0a5ce
[INFO] running `Command { std: "docker" "start" "-a" "4f8df6fd1641702cece8fdfd33f064a69d536770c818303c8930befbbfe0a5ce", kill_on_drop: false }`
[INFO] [stderr] warning: unused import: `log::info`
[INFO] [stderr]  --> src/ast.rs:3:5
[INFO] [stderr]   |
[INFO] [stderr] 3 | use log::info;
[INFO] [stderr]   |     ^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: struct `Ast` is never constructed
[INFO] [stderr]  --> src/ast.rs:5:19
[INFO] [stderr]   |
[INFO] [stderr] 5 | pub(crate) struct Ast {
[INFO] [stderr]   |                   ^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: enum `Stmt` is never used
[INFO] [stderr]  --> src/ast.rs:9:17
[INFO] [stderr]   |
[INFO] [stderr] 9 | pub(crate) enum Stmt {
[INFO] [stderr]   |                 ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `VarDecl` is never constructed
[INFO] [stderr]   --> src/ast.rs:13:19
[INFO] [stderr]    |
[INFO] [stderr] 13 | pub(crate) struct VarDecl {
[INFO] [stderr]    |                   ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: enum `Expr` is never used
[INFO] [stderr]   --> src/ast.rs:18:17
[INFO] [stderr]    |
[INFO] [stderr] 18 | pub(crate) enum Expr {
[INFO] [stderr]    |                 ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: enum `Literal` is never used
[INFO] [stderr]   --> src/ast.rs:25:17
[INFO] [stderr]    |
[INFO] [stderr] 25 | pub(crate) enum Literal {
[INFO] [stderr]    |                 ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `VarName` is never constructed
[INFO] [stderr]   --> src/ast.rs:32:19
[INFO] [stderr]    |
[INFO] [stderr] 32 | pub(crate) struct VarName(pub(crate) String);
[INFO] [stderr]    |                   ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `LambdaExpr` is never constructed
[INFO] [stderr]   --> src/ast.rs:34:19
[INFO] [stderr]    |
[INFO] [stderr] 34 | pub(crate) struct LambdaExpr {
[INFO] [stderr]    |                   ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `CallExpr` is never constructed
[INFO] [stderr]   --> src/ast.rs:39:19
[INFO] [stderr]    |
[INFO] [stderr] 39 | pub(crate) struct CallExpr {
[INFO] [stderr]    |                   ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `TyVar` is never constructed
[INFO] [stderr]  --> src/infer.rs:9:12
[INFO] [stderr]   |
[INFO] [stderr] 9 | pub struct TyVar(pub usize);
[INFO] [stderr]   |            ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: enum `Ty` is never used
[INFO] [stderr]   --> src/infer.rs:12:10
[INFO] [stderr]    |
[INFO] [stderr] 12 | pub enum Ty {
[INFO] [stderr]    |          ^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `FnTy` is never constructed
[INFO] [stderr]   --> src/infer.rs:21:12
[INFO] [stderr]    |
[INFO] [stderr] 21 | pub struct FnTy {
[INFO] [stderr]    |            ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `Scheme` is never constructed
[INFO] [stderr]   --> src/infer.rs:29:12
[INFO] [stderr]    |
[INFO] [stderr] 29 | pub struct Scheme {
[INFO] [stderr]    |            ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `TyEnv` is never constructed
[INFO] [stderr]   --> src/infer.rs:35:12
[INFO] [stderr]    |
[INFO] [stderr] 35 | pub struct TyEnv {
[INFO] [stderr]    |            ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `Infer` is never constructed
[INFO] [stderr]   --> src/infer.rs:40:12
[INFO] [stderr]    |
[INFO] [stderr] 40 | pub struct Infer {
[INFO] [stderr]    |            ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: enum `TyError` is never used
[INFO] [stderr]   --> src/infer.rs:46:10
[INFO] [stderr]    |
[INFO] [stderr] 46 | pub enum TyError {
[INFO] [stderr]    |          ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: type alias `TyResult` is never used
[INFO] [stderr]   --> src/infer.rs:56:6
[INFO] [stderr]    |
[INFO] [stderr] 56 | type TyResult<T> = Result<T, TyError>;
[INFO] [stderr]    |      ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: multiple associated items are never used
[INFO] [stderr]    --> src/infer.rs:59:12
[INFO] [stderr]     |
[INFO] [stderr]  58 | impl Infer {
[INFO] [stderr]     | ---------- associated items in this implementation
[INFO] [stderr]  59 |     pub fn new() -> Self {
[INFO] [stderr]     |            ^^^
[INFO] [stderr] ...
[INFO] [stderr]  66 |     fn fresh(&mut self) -> Ty {
[INFO] [stderr]     |        ^^^^^
[INFO] [stderr] ...
[INFO] [stderr]  72 |     fn apply(&self, t: Ty) -> Ty {
[INFO] [stderr]     |        ^^^^^
[INFO] [stderr] ...
[INFO] [stderr]  89 |     fn unify(&mut self, t1: Ty, t2: Ty) -> TyResult<()> {
[INFO] [stderr]     |        ^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 126 |     fn ftv(t: &Ty) -> HashSet<TyVar> {
[INFO] [stderr]     |        ^^^
[INFO] [stderr] ...
[INFO] [stderr] 141 |     fn ftv_scheme(s: &Scheme) -> HashSet<TyVar> {
[INFO] [stderr]     |        ^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 149 |     fn ftv_env(env: &TyEnv) -> HashSet<TyVar> {
[INFO] [stderr]     |        ^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 153 |     fn instantiate(&mut self, s: &Scheme) -> Ty {
[INFO] [stderr]     |        ^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 174 |     fn infer_expr(&mut self, env: &mut TyEnv, expr: &Expr) -> TyResult<Ty> {
[INFO] [stderr]     |        ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `occurs` is never used
[INFO] [stderr]    --> src/infer.rs:235:4
[INFO] [stderr]     |
[INFO] [stderr] 235 | fn occurs(v: &TyVar, t: &Ty) -> bool {
[INFO] [stderr]     |    ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `InferedTys` is never constructed
[INFO] [stderr]    --> src/infer.rs:244:12
[INFO] [stderr]     |
[INFO] [stderr] 244 | pub struct InferedTys {
[INFO] [stderr]     |            ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `infer_ast` is never used
[INFO] [stderr]    --> src/infer.rs:249:8
[INFO] [stderr]     |
[INFO] [stderr] 249 | pub fn infer_ast(ast: &Ast) -> TyResult<InferedTys> {
[INFO] [stderr]     |        ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: method `can_apply` is never used
[INFO] [stderr]    --> src/infer.rs:279:12
[INFO] [stderr]     |
[INFO] [stderr] 277 | impl InferedTys {
[INFO] [stderr]     | --------------- method in this implementation
[INFO] [stderr] 278 |     // for test
[INFO] [stderr] 279 |     pub fn can_apply(&self, var: &VarName, f: FnTy) -> TyResult<()> {
[INFO] [stderr]     |            ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: variant `Bool` is never constructed
[INFO] [stderr]   --> src/ast.rs:28:5
[INFO] [stderr]    |
[INFO] [stderr] 25 | pub(crate) enum Literal {
[INFO] [stderr]    |                 ------- variant in this enum
[INFO] [stderr] ...
[INFO] [stderr] 28 |     Bool(bool),
[INFO] [stderr]    |     ^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: variants `VariableConflicted` and `TypeVariableNotCallable` are never constructed
[INFO] [stderr]   --> src/infer.rs:48:5
[INFO] [stderr]    |
[INFO] [stderr] 46 | pub enum TyError {
[INFO] [stderr]    |          ------- variants in this enum
[INFO] [stderr] 47 |     VariableNotFound(VarName),
[INFO] [stderr] 48 |     VariableConflicted(VarName),
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 49 |
[INFO] [stderr] 50 |     TypeVariableNotCallable(TyVar),
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `TyError` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: associated functions `ftv`, `ftv_scheme`, and `ftv_env` are never used
[INFO] [stderr]    --> src/infer.rs:126:8
[INFO] [stderr]     |
[INFO] [stderr]  58 | impl Infer {
[INFO] [stderr]     | ---------- associated functions in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 126 |     fn ftv(t: &Ty) -> HashSet<TyVar> {
[INFO] [stderr]     |        ^^^
[INFO] [stderr] ...
[INFO] [stderr] 141 |     fn ftv_scheme(s: &Scheme) -> HashSet<TyVar> {
[INFO] [stderr]     |        ^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 149 |     fn ftv_env(env: &TyEnv) -> HashSet<TyVar> {
[INFO] [stderr]     |        ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: `hindley-milner-type-inference` (lib) generated 22 warnings (run `cargo fix --lib -p hindley-milner-type-inference` to apply 1 suggestion)
[INFO] [stderr] warning: `hindley-milner-type-inference` (lib test) generated 4 warnings (1 duplicate)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.02s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/hindley_milner_type_inference-e7ba6dd12bf8cfda)
[INFO] [stdout] 
[INFO] [stdout] running 2 tests
[INFO] [stdout] test tests::test1 ... ok
[INFO] [stdout] test tests::test2 ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 2 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests hindley_milner_type_inference
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "4f8df6fd1641702cece8fdfd33f064a69d536770c818303c8930befbbfe0a5ce", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "4f8df6fd1641702cece8fdfd33f064a69d536770c818303c8930befbbfe0a5ce", kill_on_drop: false }`
[INFO] [stdout] 4f8df6fd1641702cece8fdfd33f064a69d536770c818303c8930befbbfe0a5ce
